package D2;

import java.time.LocalDate;

public class Java06 {
    public static void main(String[] args) {
        //JDK8为什么要新增时间类，
        //因为，传统的实践类设计不合理，使用不方便，很多都被淘汰了
        //而且都是可变对象，修改后会丢失最开始的时间信息
        //线程不安全
        //不能精确到纳秒，只能精确到毫秒
        //所以，我们要学习JDK8新增的时间类
        //LocalDate类：代替Calender类

        //0、获取日期对象中的信息
        LocalDate id = LocalDate.now();
        System.out.println(id);
        //1、获取日期对象中的信息
        int year = id.getYear();
        System.out.println(year);
        int month = id.getMonthValue();
        System.out.println(month);
        int day = id.getDayOfMonth();
        System.out.println(day);
        int dayofyear = id.getDayOfYear();
        System.out.println(dayofyear);
        int dayofweek = id.getDayOfWeek().getValue();
        System.out.println(dayofweek);
        //2、直接修改某个信息
        LocalDate d2 = id.withYear(2018);
        LocalDate d3 = id.withMonth(1);
        System.out.println(d2);
        System.out.println(d3);
        System.out.println(id);
        //3、把某个信息加多少
        LocalDate d4 = id.plusYears(9);
        LocalDate d5 = id.plusMonths(10);
        System.out.println(d4);
        System.out.println(d5);
        //4、把某个信息减多少
        LocalDate d6 = id.minusYears(100);
        LocalDate D7 = id.minusMonths(100);
        System.out.println(d6);
        System.out.println(D7);
        //5、获取指定日期的LocalDate对象
        LocalDate d8 = LocalDate.of(2024,6,7);
        LocalDate d9 = LocalDate.of(2027,9,1);
        System.out.println(d8);
        System.out.println(d9);
        //判断两个日期对象，是否相等，在前还是在后
        System.out.println(d8.equals(d9));
        System.out.println(d8.isAfter(d9));
        System.out.println(d8.isBefore(d9));
    }
}
